package com.cmii.sjw.department.control.jsc.model.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 审批变更日志
 * @Author jfh
 * @Date 2025-04-28 周一 16:42
 * @Version 1.0
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class ApprovalChangeLog implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 关联的审批申请ID
     */
    private Long applicationId;

    /**
     * 关联的指标ID
     */
    private Long metricId;

    /**
     * 字段名称（指标名称、指标修改、目标修改、预警指标、数据源）
     */
    private String fieldName;

    /**
     * 原值
     */
    private String oldValue;

    /**
     * 新值
     */
    private String newValue;

    /**
     * 是否预警指标
     */
    private String isAlertIndicator;

    /**
     * 审批状态（0审批驳回 1保存 2提交审批 3审批通过 4作废）
     */
    private String status;

    /**
     * 创建人
     */
    private Long createdBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdAt;

    /**
     * 更新人
     */
    private Long updatedBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updatedAt;
}
